This relates to fluid dynamics and in particular to a method and apparatus for simulating systems described by partial differential equations.
One such system is that of fluid dynamics, a discipline of considerable practical importance. It is concerned with topics such as the flow of air past an airfoil, the flow of water past a ship's hull, and fluid flow n a pipeline.
Fluid flow at any point in a fluid stream can be described mathematically by the Navier-Stokes equation: ##EQU1## wherein .mu. is a vector specifying the direction of flow of the fluid at that point,
.rho. is a scalar specifying the density of the fluid at that point, PA1 P is a scalar specifying the pressure in the fluid at that point, PA1 .nu. is a scalar specifying the kinematic viscosity of the fluid at that point, and PA1 F is a vector specifying an external force, typically gravity.
Exact solutions to partial differential equations, such as the Navier-Stokes equations, however, are generally unavailable. Rather, the equations must be solved by making simplifying assumptions, by algebraic or numerical approximations or by physical modeling of the relationship specified by the equation. For example, one or more terms of the equation can be ignored, or solutions can be found by algebraic techniques or by numerical techniques often aided by the enormous calculation abilities of a large computer, or a wind tunnel or water trough can be used to visualize what happens when a fluid flows past an object such as an airfoil or ship's hull. In some instances, it may be possible to perform computer simulations of the phenomena represented by the equation and derive solutions to he equation from such simulations.
More recently, it has been suggested that approximate solutions to the equations of fluid dynamics might be obtained by a computer model called a cellular automation. S. Wolfram, "Cellular Automata as Models of Complexity", Nature, Vol. 311, p. 419 (Oct. 4, 1984); S. Wolfram, "Statistical Mechanics of Cellular Automata", Reviews of Modern Physics, Vol. 55, No. 3, p. 601 (July 1983); N. H. Packard and S. Wolfram, "Two-Dimensional Cellular Automata", J. of Statistical Physics, Vol. 38, Nos. 5/6, p. 901 (1985). In this model, an arbitrary space is divided into an array of identical cells. The array is typically a two-dimensional array but it could be one-dimensional, three-dimensional or even higher dimensional. Each cell has one of a small number of possible values. Typically, the cell simply has a value of 0 or 1. The values of all these cells are simultaneously updated at each "tick" of a clock according to a set of rules that are applied uniformly to the value of each cell. These rules specify the new value for each cell on the basis of the previous values of some nearby group of cells. Typically, the new value of a cell is determined by the previous value of the cell and its nearest neighbor cells. Perhaps, the best known cellular automaton is the computer game called " Life" devised by John H. Conway.
For more information on cellular automata, see the above cited papers and S. Wolfram, "Computer Software in Science and Mathematics", Scientific American, Vol. 251, No. 3, p. 188 (September 1984); and S. Wolfram, "Universality and Complexity in Cellular Automata", Physica 10D, p. 1, (1984) which are incorporated herein by reference. For information concerning "Life" see M. Gardner, Wheels, Life and Other Mathematical Amusements (Freeman 1983); and M. Eigen and R. Winkler, Laws of the Game, Ch. 10 (Alfred A. Knopf, 1981).